package com.gitee.cashzhang27.test.sdk.bestsign.domain.request;

import cn.hutool.http.Method;
import com.gitee.cashzhang27.test.sdk.bestsign.domain.AbstractBestSignRequest;
import com.gitee.cashzhang27.test.sdk.bestsign.domain.BestSignRequest;
import com.gitee.cashzhang27.test.sdk.bestsign.domain.response.SignatureImageUserCreateResponse;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
 * 生成用户签名/ / 印章 图片
 *
 * @author Cash Zhang
 * @version v1.0
 * @since 2019/08/07 11:05
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
public class SignatureImageUserCreateRequest extends AbstractBestSignRequest implements
    BestSignRequest<SignatureImageUserCreateResponse> {

  /**
   * 用户账号
   * 创建哪个用户的签名/印章图片就填该用户的帐号。企业印章横向文默认为“电子签约专用章”。
   */
  private String account;
  /**
   * 签名/印章图片上生成的文本
   * 非必填 默认 证件信息上的名称
   */
  private String test;
  /**
   * 字体名称（仅针对个人类型账号有效）
   * 非必填 默认 SimSun
   * 目前枚举值如下： SimHei 黑体 SimSun 宋体 SimKai 楷体
   */
  private String fontName;
  /**
   * 字号（仅针对个人类型账号有效）
   * 非必填 默认 30
   * 12~120，默认30，此参数影响签名字体的清晰度和签名图片大小，字号越高，字体显示越大，清晰度越高。
   * 注：过小的字号在手动签的预览页面上显示会与实际大小有差别，但签署之后的PDF上的大小正常
   */
  private String fontSize;
  /**
   * 字体颜色（仅针对个人类型账号有效）
   * 非必填 默认 black
   * 指定字体的颜色，
   * 支持：
   * red（红）
   * black（黑）
   * blue（蓝）
   * purple（紫）
   * grey（灰）
   * brown（棕）
   * tan(褐色)
   * cyan(青色)
   */
  private String fontColor;


  @Override
  public String getMethodName() {
    return "/signatureImage/user/create/";
  }

  @Override
  public Method getMethodType() {
    return Method.POST;
  }

  @Override
  public Class<SignatureImageUserCreateResponse> getResponseClass() {
    return SignatureImageUserCreateResponse.class;
  }

}
